1.22 Ein theoretischer Exkurs: Prozeduren
 
Prozeduren sind uns bisher in Form von Ereignisprozeduren begegnet. Diese Prozeduren wurden durch bestimmte Ereignisse ausgelöst. Sie beginnen mit dem Schlüsselwort »Private« und gelten innerhalb der Klasse. Prozeduren haben Namen, für welche die gleichen Regeln wie für Variablen und Steuerelemente gelten.
Daneben können Prozeduren geschrieben werden, die nicht durch ein Ereignis ausgelöst werden. Sie werden von einer bestimmten Stelle im Code mit ihrem Namen aufgerufen. Dazu kann das Schlüsselwort »Call« verwendet werden. Man kann es auch weglassen. Die folgenden beiden Zeilen sind gleichwertig:
Call EinAus()
EinAus()
Nach Abarbeitung der Prozedur springt das Programm an die Stelle zurück, von wo aus die Prozedur aufgerufen wurde. Befinden sich dahinter weitere Codezeilen, so werden sie abgearbeitet.
Soll sowohl in der Hauptroutine als auch in der Unterprozedur eine (die gleiche) Variable verwendet werden, dann muss sie global, das heißt innerhalb der Klasse, aber außerhalb der Prozeduren, deklariert werden. Wird eine Variable übergeben, dann wird beispielsweise aufgerufen:
Call EinAus(fSchalter)
Die Prozedur nimmt die Variable entgegen:
Public Sub EinAus(ByVal fSchalter As Boolean)
Analog können mehrere Variablen übergeben werden:
Call EinAus(fSchalter, intZahl1, txtName)
Die Prozedur nimmt die Variablen entgegen:
Public Sub EinAus(ByVal fSchalter As Boolean, _
intWert As Integer, txtPrivaterName As String)
Die Namen müssen dabei nicht identisch sein. Die Variablenübergabe zwischen Prozeduren wird im folgenden Kapitel genauer erläutert.
|